package modelo.catastrofe;

import modelo.interfaces.ConstruibleTerrestre;
import modelo.mapa.Ubicacion;

public abstract class Catastrofe {
        
    protected Ubicacion ubicacionDondeSeOrigina;
    
    public Catastrofe()
    {
        this.ubicacionDondeSeOrigina = this.obtenerUbicacionDeOrigenDeLaCatastrofe();
        this.afectar();
    }
    
    public Catastrofe(Ubicacion unaUbicacion)
    {
    	this.ubicacionDondeSeOrigina = unaUbicacion;
    	this.afectar();
    }

	protected abstract void afectar();
    
    public abstract Ubicacion obtenerUbicacionDeOrigenDeLaCatastrofe();
    
    protected abstract void daniar(ConstruibleTerrestre construccionADaniar);

}